load("@com_google_protobuf//:protobuf.bzl", "py_proto_library")

package(default_visibility = ["//:__subpackages__"])

licenses(["notice"])

py_proto_library(
    name = "common_py_pb2",
    srcs = [
        "common.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "tink_py_pb2",
    srcs = [
        "tink.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "config_py_pb2",
    srcs = [
        "config.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "aes_siv_py_pb2",
    srcs = [
        "aes_siv.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "rsa_ssa_pkcs1_py_pb2",
    srcs = [
        "rsa_ssa_pkcs1.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "rsa_ssa_pss_py_pb2",
    srcs = [
        "rsa_ssa_pss.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "ecdsa_py_pb2",
    srcs = [
        "ecdsa.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "ed25519_py_pb2",
    srcs = [
        "ed25519.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "aes_cmac_py_pb2",
    srcs = [
        "aes_cmac.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "hmac_py_pb2",
    srcs = [
        "hmac.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "aes_ctr_py_pb2",
    srcs = [
        "aes_ctr.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "aes_ctr_hmac_aead_py_pb2",
    srcs = [
        "aes_ctr_hmac_aead.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":aes_ctr_py_pb2",
        ":hmac_py_pb2",
    ],
)

py_proto_library(
    name = "aes_gcm_py_pb2",
    srcs = [
        "aes_gcm.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "aes_gcm_siv_py_pb2",
    srcs = [
        "aes_gcm_siv.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "aes_ctr_hmac_streaming_py_pb2",
    srcs = [
        "aes_ctr_hmac_streaming.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
        ":hmac_py_pb2",
    ],
)

py_proto_library(
    name = "aes_gcm_hkdf_streaming_py_pb2",
    srcs = [
        "aes_gcm_hkdf_streaming.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "aes_eax_py_pb2",
    srcs = [
        "aes_eax.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "chacha20_poly1305_py_pb2",
    srcs = [
        "chacha20_poly1305.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "kms_aead_py_pb2",
    srcs = [
        "kms_aead.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "kms_envelope_py_pb2",
    srcs = [
        "kms_envelope.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":tink_py_pb2",
    ],
)

py_proto_library(
    name = "ecies_aead_hkdf_py_pb2",
    srcs = [
        "ecies_aead_hkdf.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
        ":tink_py_pb2",
    ],
)

py_proto_library(
    name = "hpke_py_pb2",
    srcs = [
        "hpke.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "xchacha20_poly1305_py_pb2",
    srcs = [
        "xchacha20_poly1305.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "aes_cmac_prf_py_pb2",
    srcs = [
        "aes_cmac_prf.proto",
    ],
    visibility = ["//visibility:public"],
)

py_proto_library(
    name = "hmac_prf_py_pb2",
    srcs = [
        "hmac_prf.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "hkdf_prf_py_pb2",
    srcs = [
        "hkdf_prf.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "prf_based_deriver_py_pb2",
    srcs = [
        "prf_based_deriver.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":tink_py_pb2",
    ],
)

py_proto_library(
    name = "jwt_hmac_py_pb2",
    srcs = [
        "jwt_hmac.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "jwt_rsa_ssa_pss_py_pb2",
    srcs = [
        "jwt_rsa_ssa_pss.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "jwt_rsa_ssa_pkcs1_py_pb2",
    srcs = [
        "jwt_rsa_ssa_pkcs1.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)

py_proto_library(
    name = "jwt_ecdsa_py_pb2",
    srcs = [
        "jwt_ecdsa.proto",
    ],
    visibility = ["//visibility:public"],
    deps = [
        ":common_py_pb2",
    ],
)
